// import { Database } from 'sqlite3';
// import * as path from 'path';
// import { app } from 'electron';

// class DatabaseRepository {
//   private db: Database | null = null;

//   constructor(private dbPath: string) {}

//   connect(): Promise<void> {
//     return new Promise((resolve, reject) => {
//       this.db = new Database(this.dbPath, (err) => {
//         if (err) {
//           reject(err);
//         } else {
//           resolve();
//         }
//       });
//     });
//   }

//   disconnect(): Promise<void> {
//     return new Promise((resolve, reject) => {
//       if (this.db) {
//         this.db.close((err) => {
//           if (err) {
//             reject(err);
//           } else {
//             resolve();
//           }
//         });
//       } else {
//         resolve();
//       }
//     });
//   }

//   run(query: string, params: any[] = []): Promise<{ lastID: number; changes: number }> {
//     return new Promise((resolve, reject) => {
//       this.db?.run(query, params, function (err) {
//         if (err) {
//           reject(err);
//         } else {
//           resolve({ lastID: this.lastID, changes: this.changes });
//         }
//       });
//     });
//   }

//   get(query: string, params: any[] = []): Promise<any> {
//     return new Promise((resolve, reject) => {
//       this.db?.get(query, params, (err, row) => {
//         if (err) {
//           reject(err);
//         } else {
//           resolve(row);
//         }
//       });
//     });
//   }

//   all(query: string, params: any[] = []): Promise<any[]> {
//     return new Promise((resolve, reject) => {
//       this.db?.all(query, params, (err, rows) => {
//         if (err) {
//           reject(err);
//         } else {
//           resolve(rows);
//         }
//       });
//     });
//   }
// }

// export default DatabaseRepository;
